package com.vegetable.modules.service.inbound;

import com.vegetable.modules.entity.baseData.Products;
import com.vegetable.modules.service.stock.IStockService;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 入库库存服务接口
 */
public interface IInboundStockService {
    
    /**
     * 入库库存保存
     * @param orderTime 订单时间
     * @param inMoney 入库金额
     * @param products 商品信息
     * @param specsId 规格ID
     * @param specsName 规格名称
     * @param inNumber 入库数量
     * @param inWeight 入库重量
     * @param storageType 存储类型
     * @param warehouseId 仓库ID
     * @param warehouseName 仓库名称
     * @param agentName 代办名称
     * @param packageCost 包装费用
     * @param docNo 单据编号
     * @param orderId 订单ID
     * @param detailId 明细ID
     * @throws Exception 异常
     */
    void saveInStock(Date orderTime, BigDecimal inMoney, Products products, Long specsId, String specsName,
                     int inNumber, BigDecimal inWeight, int storageType, Long warehouseId, String warehouseName,
                     String agentName, String packageCost, String docNo, Long orderId, Long detailId, BigDecimal unitGoodsPrice) throws Exception;
                     
    /**
     * 获取库存服务
     * @return IStockService
     */
    IStockService getStockService();
}